package Thread;

public class ThreadTest extends Thread {
    private static int i = 0;

    @Override
    public void run() {
        i++;
        System.out.println(i);
        System.out.println(Thread.currentThread().getName() + "运行, i=" + i); // 取得当前线程的名称
        // super.run();
    }

    public static void main(String[] args) {
        ThreadTest myThread1 = new ThreadTest();
        ThreadTest myThread2 = new ThreadTest();
        ThreadTest myThread3 = new ThreadTest();

        // 线程的优先级,哪个线程的优先级越高，该线程就有可能会先被执行
        myThread1.setPriority(Thread.MIN_PRIORITY); // 优先级最低
        myThread2.setPriority(Thread.MAX_PRIORITY); // 优先级最高
        myThread3.setPriority(Thread.NORM_PRIORITY); // 优先级最中等

        // 这里定义了三个线程，分别执行start()方法
        myThread1.start();
        myThread2.start();

        myThread3.setDaemon(true); // 此线程在后台运行。只要有一个前台线程在运行，则整个 Java 进程都不会消失，而后台线程，Java 进程结束，后台线程也消失
        myThread3.start();
    }
}
